Memory elements and a design rule of nonvolatile semiconductor storage devices such as NAND flash memory are shrunk in recent years. As the elements become smaller, reduction of the so-called coupling ratio occurs. The reduction of coupling ratio may degrade the data programming properties when programming the memory cells.